Data backup and recovery systems often implement various techniques to increase performance and improve overall cost of implementations. For example, these systems often employ data de-duplication services for disk backup, archiving, and disaster recovery. When providing such services, these systems often use various applications to store, for example, databases and applications directly to a storage device. In addition, these services may be employed in various configuration environments such as a remote server architecture or a directly attached storage device.
In a remote server environment, applications often backup or recovery multiple client devices within a networked environment (e.g. “cloud”). However, because these applications do not reside on the storage server, they often incur various performance limitations. For example, in such an environment, the applications may suffer from limitations regarding the amount of data queries the application is capable of handling. For instance, because the application is remote from the storage device (e.g. connected via a public network such as the internet), applications must process each query by searching data that is stored remotely on the storage device. Accordingly, when applications perform a significant number of queries, the overall device performance of the remote storage device may degrade significantly. Accordingly, there is a need to improve the ability for an application to handle queries for data stored on a remote storage device.